GNU C provides several language features not found in ANSI standard C. (The -pedantic option directs GNU CC to print a warning message if any of these features is used.) To test for the availability of these features in conditional compilation, check for a predefined macro __GNUC__ , which is always defined under GNU CC.
These extensions are available in C and Objective-C. Most of them are also available in C++. See See Extensions to the C++ Language for extensions that apply only to C++.